package com.bysc.baseservice.config;

import com.google.common.base.Predicates;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {


    @Bean

    public Docket webApiConfig() {


        return new Docket(DocumentationType.SWAGGER_2)

                .groupName("webApi")

                .apiInfo(webApiInfo())

                .select()
                .apis(RequestHandlerSelectors.basePackage("com.bysc"))

                .paths(Predicates.not(PathSelectors.regex("/admin/.*"))).paths(Predicates.not(PathSelectors.regex("/error.*")))
                .build();


    }

    private ApiInfo webApiInfo() {


        return new ApiInfoBuilder()
                .title("网站-广白软协官网API文档")

                .description("本文档描述了广白软协官网微服务接口定义")

                .version("1.0")

                .contact(new Contact("kkk", "http://bysc.com",

                        "172110159@qq.com"))

                .build();

    }

}


